//
//  Queue.h
//  VinSwiper
//
//  Created by siloon on 5/20/11.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>

#define SL_QUEUE_CAPACITY 100

@interface SLQueue : NSObject {
    id theQueue[SL_QUEUE_CAPACITY]; // contains many objects
	NSInteger queueHeadIndex; // the head, NOT empty pos
	NSInteger queueTailIndex; // the tail, empty pos
}

- (void)enqueue:(id)elem;
- (id)dequeue;
- (id)peekFirst;
- (id)peekLast;
- (void)clearQueue;
- (BOOL)isEmpty;

- (NSString *)description;

@end
